package com.wiscamp.ninechapters.tags.application.dto.vo;

import com.wiscamp.ninechapters.ddd.ViewObject;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Collection;

/**
 * 课程
 */
@Data
public class CourseVO implements ViewObject {
    /**
     * 课程编号
     */
    private long courseId = 0;

    /**
     * 学科编号
     */
    private long subjectId = 0;

    /**
     * 课程代码
     */
    private String courseCode = "";

    /**
     * 课程名称
     */
    private String courseName = "";

    /**
     * 课程封面地址
     */
    private String coverUrl = "";

    /**
     * 备注
     */
    private String remark = "";

    /**
     * 是否可用
     */
    private boolean enabled = true;

    /**
     * 创建用户
     */
    private long creatorId = 0;

    /**
     * 创建时间
     */
    private LocalDateTime creationTime;

    /**
     * 编辑用户
     */
    private long modifierId = 0;

    /**
     * 编辑时间
     */
    private LocalDateTime modificationTime;

    private String creatorName = "";

    private String modifierName = "";

    private Collection<CourseOutlineVO> outlines = new ArrayList<>();
}